<!DOCTYPE HTML PUBLIC "-//ORA//DTD CD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>[Chapter 28] 28.16 java.net.Socket (JDK 1.0)</TITLE>
<META NAME="author" CONTENT="David Flanagan">
<META NAME="date" CONTENT="Thu Jul 31 16:31:13 1997">
<META NAME="form" CONTENT="html">
<META NAME="metadata" CONTENT="dublincore.0.1">
<META NAME="objecttype" CONTENT="book part">
<META NAME="otheragent" CONTENT="gmat dbtohtml">
<META NAME="publisher" CONTENT="O'Reilly &amp; Associates, Inc.">
<META NAME="source" CONTENT="SGML">
<META NAME="subject" CONTENT="Java">
<META NAME="title" CONTENT="Java in a Nutshell">
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
</HEAD>
<body vlink="#551a8b" alink="#ff0000" text="#000000" bgcolor="#FFFFFF" link="#0000ee">

<DIV CLASS=htmlnav>
<H1><a href='index.htm'><IMG SRC="gifs/smbanner.gif"
     ALT="Java in a Nutshell" border=0></a></H1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch28_15.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><B><FONT FACE="ARIEL,HELVETICA,HELV,SANSERIF" SIZE="-1">Chapter 28<br>The java.net Package</FONT></B></TD>
<td width=172 align=right valign=top><A HREF="ch28_17.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
</table>

&nbsp;
<hr align=left width=515>
</DIV>
<DIV CLASS=sect1>
<h2 CLASS=sect1><A CLASS="TITLE" NAME="JNUT2-CH-28-SECT-16">28.16 java.net.Socket (JDK 1.0)</A></h2>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-28-SECT-16.1"></A></h3>
</DIV>

<P CLASS=para>
This class implements a socket for interprocess
communication over the network. The constructor methods
create the socket and connect it to the specified host and
port. You may also optionally specify whether communication
through the socket should be based on an underlying reliable
connection-based stream protocol, or on an underlying
unreliable (but faster) datagram protocol. A stream
protocol is the default.

<P CLASS=para>
Once the socket is created, <tt CLASS=literal>getInputStream()</tt> and
<tt CLASS=literal>getOutputStream()</tt> return <tt CLASS=literal>InputStream</tt> and
<tt CLASS=literal>OutputStream</tt> objects that you can use just as you
would for file input and output. <tt CLASS=literal>getInetAddress()</tt>
and <tt CLASS=literal>getPort()</tt> return the address and port that the
socket is connected to. <tt CLASS=literal>getLocalPort()</tt> returns the
local port that the socket is using.

<DIV CLASS=screen>
<P>
<PRE>
public class <tt CLASS=literal>Socket</tt> extends Object {
    // <tt CLASS=literal>Public Constructors</tt>
            public <tt CLASS=literal>Socket</tt>(String <tt CLASS=literal>host</tt>, int <tt CLASS=literal>port</tt>) throws UnknownHostException, IOException;
            public <tt CLASS=literal>Socket</tt>(InetAddress <tt CLASS=literal>address</tt>, int <tt CLASS=literal>port</tt>) throws IOException;
        <b>1.1</b>public <tt CLASS=literal>Socket</tt>(String <tt CLASS=literal>host</tt>, int <tt CLASS=literal>port</tt>, InetAddress <tt CLASS=literal>localAddr</tt>, int <tt CLASS=literal>localPort</tt>) throws IOException;
        <b>1.1</b>public <tt CLASS=literal>Socket</tt>(InetAddress <tt CLASS=literal>address</tt>, int <tt CLASS=literal>port</tt>, InetAddress <tt CLASS=literal>localAddr</tt>, int <tt CLASS=literal>localPort</tt>) throws IOException;
        #   public <tt CLASS=literal>Socket</tt>(String <tt CLASS=literal>host</tt>, int <tt CLASS=literal>port</tt>, boolean <tt CLASS=literal>stream</tt>) throws IOException;
        #   public <tt CLASS=literal>Socket</tt>(InetAddress <tt CLASS=literal>host</tt>, int <tt CLASS=literal>port</tt>, boolean <tt CLASS=literal>stream</tt>) throws IOException;
    // <tt CLASS=literal>Protected Constructors</tt>
        <b>1.1</b>protected <tt CLASS=literal>Socket</tt>();
        <b>1.1</b>protected <tt CLASS=literal>Socket</tt>(SocketImpl <tt CLASS=literal>impl</tt>) throws SocketException;
    // <tt CLASS=literal>Class Methods</tt>
            public static synchronized void <tt CLASS=literal>setSocketImplFactory</tt>(SocketImplFactory <tt CLASS=literal>fac</tt>) throws IOException;
    // <tt CLASS=literal>Public Instance Methods</tt>
            public synchronized void <tt CLASS=literal>close</tt>() throws IOException;
            public InetAddress <tt CLASS=literal>getInetAddress</tt>();
            public InputStream <tt CLASS=literal>getInputStream</tt>() throws IOException;
        <b>1.1</b>public InetAddress <tt CLASS=literal>getLocalAddress</tt>();
            public int <tt CLASS=literal>getLocalPort</tt>();
            public OutputStream <tt CLASS=literal>getOutputStream</tt>() throws IOException;
            public int <tt CLASS=literal>getPort</tt>();
        <b>1.1</b>public int <tt CLASS=literal>getSoLinger</tt>() throws SocketException;
        <b>1.1</b>public synchronized int <tt CLASS=literal>getSoTimeout</tt>() throws SocketException;
        <b>1.1</b>public boolean <tt CLASS=literal>getTcpNoDelay</tt>() throws SocketException;
        <b>1.1</b>public void <tt CLASS=literal>setSoLinger</tt>(boolean <tt CLASS=literal>on</tt>, int <tt CLASS=literal>val</tt>) throws SocketException;
        <b>1.1</b>public synchronized void <tt CLASS=literal>setSoTimeout</tt>(int <tt CLASS=literal>timeout</tt>) throws SocketException;
        <b>1.1</b>public void <tt CLASS=literal>setTcpNoDelay</tt>(boolean <tt CLASS=literal>on</tt>) throws SocketException;
            public String <tt CLASS=literal>toString</tt>();  //<tt CLASS=literal> Overrides Object</tt>
}
</PRE>
</DIV>

</DIV>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-28-SECT-16.2">Passed To:</A></h3>

<P CLASS=para>
ServerSocket.implAccept()

</DIV>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-28-SECT-16.3">Returned By:</A></h3>

<P CLASS=para>
ServerSocket.accept()

</DIV>

</DIV>


<DIV CLASS=htmlnav>

<P>
<HR align=left width=515>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch28_15.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><a href="index.htm"><img src='gifs/txthome.gif' border=0 alt='Home'></a></td>
<td width=172 align=right valign=top><A HREF="ch28_17.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
<tr>
<td width=172 align=left valign=top>java.net.ServerSocket (JDK 1.0)</td>
<td width=171 align=center valign=top><a href="index/idx_0.htm"><img src='gifs/index.gif' alt='Book Index' border=0></a></td>
<td width=172 align=right valign=top>java.net.SocketException (JDK 1.0)</td>
</tr>
</table>
<hr align=left width=515>

<IMG SRC="gifs/smnavbar.gif" USEMAP="#map" BORDER=0> 
<MAP NAME="map"> 
<AREA SHAPE=RECT COORDS="0,0,108,15" HREF="../javanut/index.htm"
alt="Java in a Nutshell"> 
<AREA SHAPE=RECT COORDS="109,0,200,15" HREF="../langref/index.htm" 
alt="Java Language Reference"> 
<AREA SHAPE=RECT COORDS="203,0,290,15" HREF="../awt/index.htm" 
alt="Java AWT"> 
<AREA SHAPE=RECT COORDS="291,0,419,15" HREF="../fclass/index.htm" 
alt="Java Fundamental Classes"> 
<AREA SHAPE=RECT COORDS="421,0,514,15" HREF="../exp/index.htm" 
alt="Exploring Java"> 
</MAP>
</DIV>

</BODY>
</HTML>
